//
//  WXVisitorTableViewController.swift
//  WXWeiBo
//
//  Created by Angel-xin on 2016/09/20.
//  Copyright © 2016年 Angel-xin. All rights reserved.
//

import UIKit

class WXVisitorTableViewController: UITableViewController, WXVisitorViewDelegate {
    
    // 是否登录的标记
    var isLogin: Bool = WXUserAccountViewModel.sharedUserAccountViewModel.isLogin
    
    // 访客视图
    var visitorView: WXVisitorView?
    
    // 自定义view视图, 重写loadView是自定义控制器中的视图view
    override func loadView() {
        
        if isLogin {
            super.loadView()
        } else {
            
            // 自己提供一个视图
            visitorView = WXVisitorView()
            
            // 设置代理
            visitorView?.delegate = self
            
            // 设置闭包
            visitorView?.loginClosure = { [weak self] in
                print("登录闭包")
                self?.requestLoginOperation()
            }
            
            view = visitorView
            
            // 未登录情况下执行添加导航栏按钮
            setupNavUI()
        }
    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
    // 设置导航栏按钮
    private func setupNavUI() {
        
        navigationItem.leftBarButtonItem = UIBarButtonItem(title: "注册", target: self, action: #selector(loginAction))
        navigationItem.rightBarButtonItem = UIBarButtonItem(title: "登录", target: self, action: #selector(loginAction))
    }
    
    // MARK: - 点击事件
    @objc private func loginAction() {
        print("登录操作")
        requestLoginOperation()
    }
    
    // MARK: - WXVisitorViewDelegate 实现代理方法
    func didSelectedLogin() {
        print("代理操作")
    }
    
    // 请求登录的操作
    private func requestLoginOperation() {
        
        let oAuthVC = WXOAuthViewController()
        
//        present(oAuthVC, animated: true, completion: nil)
        
        let nav = WXNavigationViewController(rootViewController: oAuthVC)
        
        present(nav, animated: true, completion: nil)
    }

}















